今日の目標
昨日忙しくて全然作業が出来なかったからタグ検索を完成させる。 と言ってもあとはファイル名を出力するようにプログラムを書けばいいだけなのでそれはやってしまった。 最低限の昨日しか実装していないが、これでユーザーがタグ単位の検索をしたくなったときにタグをクリックしたときの挙動が完成した。 なので今日はタグ一覧からタグ検索をかけるシステムを作っていこうと思う。
アルゴリズム
まずはタグ一覧のわかりやすい何かを作らなければならない。 タグは、階層構造になっているのだがそれをわかりやすくブラウザ上に表示する方法を考えたときに そんなこったデザインができるわけではないので、普通にプルダウンボックスを表示する方法でいいかなと思っている。
今回のコーディングはまず最初にレベル1タグを選択してもらってそれをJSで取得、 その都度HTMLに値を入れていって次のレベルを選択できるようにする。かんたんに言うとこんな感じになる。 難しく言うと、select要素の変更のたびにjs関数を呼んでセレクトされた内容を取得してそれをもとに次のレベルのタグ候補を引っぱり出してくる。 その時、そのレベル以上のタグのselect内のHTMLはNULLにしておく。
コーディング
コーディング面で行くと苦労したのはphpからjsへの変数の受け渡しだ。もうあんなにきもい配列を書きたくはないので phpからjsにその都度受け渡しするようにしたいのだが、これが結構難しかった(というよりあんまりやらないので慣れてなかった)。 あと、この頃phpばかりでの開発だったのでjsの仕様を忘れていた部分があった。
TODO
これにてタグ検索は完成したので、明日は忙しくなりそうなのでWeblogのトップページ を装飾していく。